Шаг 297 - Получаем ссылки на основные документы или все вместе.

Теперь настало время посмотреть весь код вместе.

ИсторияИзмененияСостояний = СоздатьОбъект("Периодический");
ИсторияИзмененияСостояний.ИспользоватьОбъект("Состояние", ТекущийДокумент());
ИсторияИзмененияСостояний.ВыбратьЗначения();
ДокументПоступления = "";
ДокументВводаВЭксплуатацию = "";
ДокументВыбытия = "";
Пока ИсторияИзмененияСостояний.ПолучитьЗначение() = 1 Цикл
ИстДок = ИсторияИзмененияСостояний.ТекущийДокумент();
Если ИстДок.Выбран() = 1 Тогда
                    Если ИстДок.Вид() = "ПоступлениеОС" Тогда
                         ДокументПоступления = ИстДок;
                    
                    ИначеЕсли ИстДок.Вид() = "ВводВЭксплуатациюОС" Тогда
                         ДокументВводаВЭксплуатацию = ИстДок;
     
                    ИначеЕсли (ИстДок.Вид() = "ПередачаОС") или (ИстДок.Вид() = "СписаниеОС") Тогда
                         ДокументВыбытия = ИстДок;
                    КонецЕсли;
	КонецЕсли;
КонецЦикла;

Здесь практически все понятно. Создаем объект периодический реквизит. Выбираем состояние основного средства. Бежим по состояниям. Смотрим, какой документ был связан с изменением состояния основного средства. И если есть документы изменения состояния, то запоминаем их в отдельные переменные для дальнейшего использования. Например в отчете ОС-6.

Hosted by uCoz